package cn.tannn.ops.sys.domain;

import com.alibaba.fastjson2.JSONObject;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import org.apache.commons.lang3.StringUtils;

/**
 * 系统基础信息
 *
 * @author <a href="https://t.tannn.cn/">tan</a>
 * @version V1.0
 * @date 2024/12/6 10:16
 */
@Getter
@Setter
@ToString
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "系统基础信息")
public class SysInfo {

    /**
     * 系统标题
     */
    @Schema(description = "系统标题")
    private String title;


    /**
     * 系统logo[base64]
     */
    @Schema(description = "系统logo[base64]")
    private String logo;


    /**
     * 系统favicon[base64]
     */
    @Schema(description = "系统favicon[base64]")
    private String favicon;


    /**
     * init
     */
    public static SysInfo initInfo() {
        SysInfo sysInfo = new SysInfo();
        sysInfo.setTitle("云图·区域防务态势情报");
        sysInfo.setLogo("");
        sysInfo.setFavicon("");
        return sysInfo;
    }

    /**
     * init
     */
    public static JSONObject initInfoJson() {
        return SysInfo.initInfo().toJson();
    }

    public JSONObject toJson() {
        return JSONObject.from(this);
    }

    /**
     * true 空对象
     */
    public boolean blank(){
        return StringUtils.isBlank(title) && StringUtils.isBlank(logo) && StringUtils.isBlank(favicon);
    }
}
